package com.ftf.tp.blog.application.assembler;

import com.ftf.tp.blog.application.vo.ColumnVO;
import com.ftf.tp.blog.domain.article.valobj.ColumnValue;
import com.ftf.tp.blog.domain.configuration.dos.ColumnDO;
import com.ftf.tp.blog.application.dto.ColumnDTO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 专栏相关领域对象转换器
 *
 * @author tanghao
 * @date 2022/6/28
 */
@Mapper
public interface ColumnAssembler {

    ColumnAssembler INSTANCE = Mappers.getMapper(ColumnAssembler.class);

    ColumnDO dtoToDo(ColumnDTO columnDTO);

    List<ColumnDO> dtoListToDOList(List<ColumnDTO> columnDTOList);

    List<ColumnValue> convert(List<ColumnDTO> columnDTOList);

    List<ColumnVO> doToVoList(List<ColumnDO> columnDOList);
}
